# The core set of fonts. These are expected to be available at a minimum.
#
# Properties:
#   name        (string)    Human-readable name of the font.
#   regular     (string)    Font file for the Regular style (required!).
#   italic      (string)    Font file for the Italic style (optional).
#   light       (string)    Font file for the Light style (optional).
#   semibold    (string)    Font file for the Semibold style (optional).
#   bold        (string)    Font file for the Bold style (optional).
#   auxiliary   (bool)      Not selectable as a content font (e.g., symbols).
#   monospace   (bool)      Monospace font; suitable for performatted text.
#   override    (bool)      Check this first regardless of active font.
#   priority    (int)       Lookup priority (largest checked first).
#   glyphscale  (float)     Additional glyph scaling (<= 1.0).
#   voffset     (float)     Vertical offset (normalized).
#
# `glyphscale` and `voffset` can also be specified separately for the UI and
# document domains by prefixing `ui.` or `doc.` to the key.

[default]
name        = "Roboto"
regular     = "fonts/Roboto-Regular.ttf"
light       = "fonts/Roboto-Thin.ttf"
semibold    = "fonts/Roboto-Bold.ttf"
bold        = "fonts/Roboto-Black.ttf"
italic      = "fonts/Roboto-Italic.ttf"
doc.glyphscale = 0.850
ui.glyphscale  = 0.775
doc.height     = 0.95

[sourcesans3]
name        = "Source Sans"
regular     = "fonts/SourceSans3-Regular.ttf"
italic      = "fonts/SourceSans3-It.ttf"
light       = "fonts/SourceSans3-ExtraLight.ttf"
semibold    = "fonts/SourceSans3-Semibold.ttf"
bold        = "fonts/SourceSans3-Bold.ttf"

[iosevka]
name        = "Iosevka (compact)"
monospace   = true
doc.height  = 0.800
regular     = "fonts/IosevkaTerm-Extended.ttf"

[iosevka-body]
# Variant of Iosevka with expanded line spacing for better readability.
# Matches the baseline and ascent of the default font.
name        = "Iosevka"
monospace   = true
priority    = 1
glyphscale  = 0.800
regular     = "fonts/IosevkaTerm-Extended.ttf"

[smolemoji]
name        = "Smol Emoji"
override    = true  # These Emoji/symbols are always preferred.
auxiliary   = true
priority    = 100
regular     = "fonts/SmolEmoji-Regular.otf"

[notoemoji]
name        = "Noto Emoji"
auxiliary   = true
priority    = 30
glyphscale  = 1.1
regular     = "fonts/NotoEmoji-Regular.ttf"

[notoemoji-23]
# This has lower priority because the original Noto Emoji has some nicer designs.
# However, this newer version covers Unicode 15.1.
name        = "Noto Emoji (2023)"
auxiliary   = true
priority    = 5
glyphscale  = 1.0
regular     = "fonts/NotoEmoji2023-Regular.ttf"

[notosymbols2]
name        = "Noto Sans Symbols 2"
auxiliary   = true
priority    = 20
glyphscale  = 1.45
voffset     = 0.5
regular     = "fonts/NotoSansSymbols2-Regular.ttf"

[notosymbols]
name        = "Noto Sans Symbols"
auxiliary   = true
priority    = 10
glyphscale  = 2.0
voffset     = 1.2
regular     = "fonts/NotoSansSymbols-Regular.ttf"
